home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CD ROM Paradise Collection 4
/
CD ROM Paradise Collection 4 1995 Nov.iso
/
os2
/
adaptor.zip
/
ADAPT.ZIP
/
adaptor
/
examples
/
dalib
/
schedule
/
all.f
next >
Wrap
Text File
|
1993-06-28
|
3KB
|
117 lines
c test program for dalib_schedule
c
program test
call test_get1 ()
call test_set1 ()
call test_get2 ()
call test_set2 ()
end
subroutine test_get1 ()
parameter (N=10)
integer A(N), B(N), P(N), HA(N)
cmf$ layout HA(:host)
real R(N)
forall (I=1:N) A(I) = I
c init P by random
call cmf_random (R)
P = R * N + 1
HA = P
print *, 'TEST of GET1'
print 10, HA
HA = A
call global_get (B, A, P)
c B = A(P)
print 11, HA
HA = B
print 12, HA
10 format (' P : ',20I3)
11 format (' A : ',20I3)
12 format (' B = A[P] : ',20I3)
end
subroutine test_set1 ()
parameter (N=10)
integer A(N), B(N), P(N), HA(N)
cmf$ layout HA(:host)
real R(N)
forall (I=1:N) A(I) = I
B = 0
c init P by random
call cmf_random (R)
P = R * N + 1
HA = P
print 10, HA
HA = A
print 11, HA
c B(P) = A
print *, 'TEST of SET1'
call global_send (B, P, A)
HA = B
print 12, HA
10 format (' P : ',20I3)
11 format (' A : ',20I3)
12 format (' B[P] = A : ',20I3)
end
subroutine test_get2 ()
parameter (N=10)
integer A(3,N), B(N), P(N), Q(N), HA(N), HA1(3,N)
cmf$ layout HA(:host)
cmf$ layout HA1(:host)
real R(N)
forall (I=1:N,J=1:3) A(J,I) = J*10 + I
c init P by random
call cmf_random (R)
P = R * 3 + 1
call cmf_random (R)
Q = R * N + 1
print *, 'TEST of GET2'
HA = P
print 10, HA
HA = Q
print 11, HA
HA1 = A
do J = 1, 3
print 12, HA1 (J,:)
end do
call global_get (B, A, P, Q)
HA = B
print 13, HA
10 format (' P : ',20I3)
11 format (' Q : ',20I3)
12 format (' A : ',20I3)
13 format (' B = A[P,Q] : ',20I3)
end
subroutine test_set2 ()
parameter (N=10)
integer A(3,N), B(N), P(N), Q(N), HA(N), HA1(3,N)
cmf$ layout HA (:host)
cmf$ layout HA1 (:host)
real R(N)
forall (I=1:N) B(I) = I
A = 0
c init P by random
print *, 'TEST of SET2'
call cmf_random (R)
P = R * 3 + 1
HA = P
print 10, HA
call cmf_random (R)
Q = R * N + 1
HA = Q
print 11, HA
HA = B
print 12, HA
call global_send (A, P, Q, B)
HA1 = A
do J = 1, 3
print 13, HA1(J,:)
end do
10 format (' P : ',20I3)
11 format (' Q : ',20I3)
12 format (' B : ',20I3)
13 format (' A[P,Q] = B : ',20I3)
end